/***
 * @Description:
 * @Author: LI Yihong
 * @Email: liyh@jihua.ac.cn
 * @Date: 2024-10-23 11:29:20
 * @LastEditTime: 2024-10-23 11:29:21
 * @LastEditors: LI Yihong
 * @FilePath: \STM32F407_Board\applications\watchdog\watchDog.hpp
 */
#pragma once
#include <memory>
#include <string>
#include <board.h>
#include <rtdevice.h>
#include <drivers/watchdog.h>
#include "cxx_thread.h"
#include "cxx_semaphore.h"

using namespace rtthread;
using namespace std;

class WatchDog : public Thread
{
public:
    using Thread::Thread;

    void run(void *parameter);

private:
    rt_device_t wdgDev;

public:
    shared_ptr<Semaphore> SemKey_0;
};
